1. Field of the Invention
The present invention relates to an image forming apparatus and a method of controlling an image forming apparatus.
2. Description of the Related Art
Processing capability and network connection capability of image forming apparatuses have drastically improved with recent development of information processing technology and network technology. An image forming apparatus called a multifunction product (MFP) includes functions such as a copier function, a printer function, a facsimile (FAX) function, and a network connecting function, to therefore provide functions required by a user.
There has been a desire from users that an image forming apparatus be able to repeatedly execute a certain process that the user has performed once. Therefore, in some image forming apparatuses, a job history indicative of the operations performed by a user is recorded, and a part of the job history, or the entire job history, is selected to cause the image forming apparatus to execute processes in the sequence recorded in the selected job history.
For example, Japanese Patent Application Laid-Open No. 2001-265761 discloses a data editing device that includes a memory unit for storing therein a log of a process of editing operation. The user causes the data editing device to read and display the log stored in the memory unit, and selects an arbitrary range from the displayed log. As a result, the data editing device executes again the process indicated by the selected range at an arbitrarily specified position.
Japanese Patent Application Laid-Open No. 2003-280946 discloses an information processing device that records therein an output screen as job history. The information processing device includes an output monitoring unit that monitors contents of the output screen and detects any change therein, also includes a screen reproducing unit that reproduces contents of the output screen recorded after a specified time, and displays some part after the specified time of log of previous input on the display screen so that the user can view it.
It is usual that image forming apparatuses have different hardware and software configurations depending on where and how they are used. Furthermore, some of the apparatuses have user-customized optional functions. Because of these reasons, a job history created on one apparatus cannot be so easily reproduced as it is on other apparatus even if both the apparatuses are of the same model. Ability to perform punching and stapling, and ability to support a function such as plug-in software to execute any other processes are the example of user-customized optional functions.
Therefore, conventionally, a job history created on one image forming apparatus can only be used in other image forming apparatuses that have the same model as the image forming apparatus on which the job history was created, or to devices that are compatible to the image forming apparatus on which the job history was created. In other words, the conventional job history is device-dependent rather than user-dependent. Therefore, it is often difficult to execute a job history created on one image forming apparatus on other image forming apparatus. Therefore, there was no point in storing a job history created on one image forming apparatus in detachable storage devices, such as a secured digital (SD) card and a universal serial bus (USB) memory, in order to use that job history on other image forming apparatuses.
One approach could be to create a macro of a job history. A macro can be executed on image forming apparatuses of various hardware or software configurations allowing easy sharing of a job history among the image forming apparatuses. However, conditions such as operating conditions need to be additionally registered in a job history to function as the macro. In addition, because both the job history and the macro need to be stored in the image forming apparatus, extra memory resources are required.
Generally, a relatively small storage area is allocated to store job histories in image forming apparatuses. Therefore, job histories and corresponding macros must be stored in the relatively small storage area in the most efficient manner. Moreover, in terms of consumption of memory resources, it is not a wise idea to record in an image forming apparatus a job history of operations performed related to optional functions that are not available in the image forming apparatus but that were available in the image forming apparatuses that created the job history.
The number of job histories that can be stored at any given time is generally limited. Therefore, if the number of job histories exceeds the capacity, an oldest job history is deleted when storing a new job history. If both of job histories and corresponding macros are to be stored, the data amount to be stored becomes about twice. This causes a problem that if the amount of stored data exceeds the capacity, then even those job histories and macros that are frequently used are deleted. In other words, the original object of improving operation efficiency of an image forming apparatus by storing therein frequently used job histories and macros is not achieved.
The problem related to the saving of the memory resources can be dealt with to some extent by storing job histories and macros in detachable storage devices such as SD cards and memory sticks. However, it is desirable to exclude redundancy as data structures of job histories and macros as much as possible from the view point of saving of hardware resources of image forming apparatuses.
Sometimes, job histories and macros created from those job histories are managed separately. In this case, if new information or schema is added to a job history, the same information or the schema needs to be separately added to the corresponding macro. This causes a problem that the correction of one data structure or the addition of the schema thereto has to be independently performed on the other data structure. The problem causes the user to perform redundant registration operations, which causes a new problem to occur. The new problem is that the similarity (or correspondence) between the job history and the macro cannot be ensured caused by correction error or the like.